package de.tum.datatypes;

public class ExamStatistics {
	private int nbrOfPartcipants,  nbrOfPassed, nbrOfFailed, maxPointsToAchieve;
	private double average, averageWOFailed, averagePoints;
	
	/**
	 * Which grade occurs how often?
	 */
	private int[] gradingDistributionArray;
	
	/**
	 * Array With all archieved points by all students
	 */
	private double[] archievedPoints;
	
	/**
	 * Average Points per Exercise
	 */
	private double[] averagePointsPerExercise;
	
	/**
	 * Maximujm Points per Exercise
	 */
	private double[] maxPointsPerExercise;
	
	
	public ExamStatistics(int nbrOfParticipants, int nbrOfPassed, int nbrOfFailed, int maxPointsToAchieve, double average, double averageWOFailed, double averagePoints, int[] gradingDistributionArray, double[] archievedPoints, double[] averagePointsPerExercise, double[] maxPointsPerExercise){
		this.nbrOfPartcipants = nbrOfParticipants;
		this.nbrOfPassed = nbrOfPassed;
		this.nbrOfFailed = nbrOfFailed;
		this.maxPointsToAchieve = maxPointsToAchieve;
		this.average = average;
		this.averageWOFailed = averageWOFailed;
		this.averagePoints = averagePoints;
		this.gradingDistributionArray = gradingDistributionArray;
		this.archievedPoints = archievedPoints;
		this.averagePointsPerExercise = averagePointsPerExercise;
		this.maxPointsPerExercise = maxPointsPerExercise;
	}


	/**
	 * GETTERS & SETTERS
	 * @return
	 */
	public int getNbrOfPartcipants() {
		return nbrOfPartcipants;
	}


	public int getNbrOfPassed() {
		return nbrOfPassed;
	}


	public void setNbrOfPassed(int nbrOfPassed) {
		this.nbrOfPassed = nbrOfPassed;
	}


	public int getNbrOfFailed() {
		return nbrOfFailed;
	}


	public void setNbrOfFailed(int nbrOfFailed) {
		this.nbrOfFailed = nbrOfFailed;
	}


	public int getMaxPointsToAchieve() {
		return maxPointsToAchieve;
	}


	public void setMaxPointsToAchieve(int maxPointsToAchieve) {
		this.maxPointsToAchieve = maxPointsToAchieve;
	}


	public double getAverage() {
		return average;
	}


	public void setAverage(double average) {
		this.average = average;
	}


	public double getAverageWOFailed() {
		return averageWOFailed;
	}


	public void setAverageWOFailed(double averageWOFailed) {
		this.averageWOFailed = averageWOFailed;
	}


	public double getAveragePoints() {
		return averagePoints;
	}


	public void setAveragePoints(double averagePoints) {
		this.averagePoints = averagePoints;
	}


	public int[] getGradingDistributionArray() {
		return gradingDistributionArray;
	}


	public void setGradingDistributionArray(int[] gradingDistributionArray) {
		this.gradingDistributionArray = gradingDistributionArray;
	}


	public double[] getArchievedPoints() {
		return archievedPoints;
	}


	public void setArchievedPoints(double[] archievedPoints) {
		this.archievedPoints = archievedPoints;
	}


	public double[] getAveragePointsPerExercise() {
		return averagePointsPerExercise;
	}


	public void setAveragePointsPerExercise(double[] averagePointsPerExercise) {
		this.averagePointsPerExercise = averagePointsPerExercise;
	}


	public double[] getMaxPointsPerExercise() {
		return maxPointsPerExercise;
	}


	public void setMaxPointsPerExercise(double[] maxPointsPerExercise) {
		this.maxPointsPerExercise = maxPointsPerExercise;
	}


	public void setNbrOfPartcipants(int nbrOfPartcipants) {
		this.nbrOfPartcipants = nbrOfPartcipants;
	}

}
